From 636d22a96061c9eb45276d7043c5963d6a7cace3 Mon Sep 17 00:00:00 2001 From: "cl349@firebug.cl.cam.ac.uk" Date: Fri, 25 Mar 2005 19:09:13 +0000 Subject: [PATCH] bitkeeper revision 1.1236.47.1 (424461d9MLablVR0mkl5fIg3Km-RAg) Fix race between sending responses to the guest frontend driver and guest adding new requests. Signed-off-by: Christian Limpach --- linux-2.6.11-xen-sparse/drivers/xen/blktap/blktap.h | 2 ++ linux-2.6.11-xen-sparse/drivers/xen/blktap/blktap_userdev.c | 5 ++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/linux-2.6.11-xen-sparse/drivers/xen/blktap/blktap.h b/linux-2.6.11-xen-sparse/drivers/xen/blktap/blktap.h index eb084e8f06..a55be6c23e 100644 --- a/linux-2.6.11-xen-sparse/drivers/xen/blktap/blktap.h +++ b/linux-2.6.11-xen-sparse/drivers/xen/blktap/blktap.h @@ -30,6 +30,8 @@ /* -------[ debug / pretty printing ]--------------------------------- */ +#define PRINTK(_f, _a...) printk(KERN_ALERT "(file=%s, line=%d) " _f, \ + __FILE__ , __LINE__ , ## _a ) #if 0 #define DPRINTK(_f, _a...) printk(KERN_ALERT "(file=%s, line=%d) " _f, \ __FILE__ , __LINE__ , ## _a ) diff --git a/linux-2.6.11-xen-sparse/drivers/xen/blktap/blktap_userdev.c b/linux-2.6.11-xen-sparse/drivers/xen/blktap/blktap_userdev.c index b503b1ec13..93594623b0 100644 --- a/linux-2.6.11-xen-sparse/drivers/xen/blktap/blktap_userdev.c +++ b/linux-2.6.11-xen-sparse/drivers/xen/blktap/blktap_userdev.c @@ -299,7 +299,7 @@ int blktap_write_fe_ring(blkif_request_t *req) } if ( RING_FULL(&blktap_ufe_ring) ) { - DPRINTK("blktap: fe_ring is full, can't add.\n"); + PRINTK("blktap: fe_ring is full, can't add.\n"); return 0; } @@ -383,10 +383,9 @@ static int blktap_read_fe_ring(void) zap_page_range(blktap_vma, MMAP_VADDR(ID_TO_IDX(resp_s->id), 0), ar->nr_pages << PAGE_SHIFT, NULL); write_resp_to_fe_ring(blkif, resp_s); + blktap_ufe_ring.rsp_cons = i + 1; kick_fe_domain(blkif); } - - blktap_ufe_ring.rsp_cons = i; } return 0; } -- 2.30.2